s = "Deadline is 30/05/1999, firm"
date = "%d%d/%d%d/%d%d%d%d"
print(string.match(s,date))
--[[
    . 任意字符
    %a 字母
    %c 控制字符
    %d 数字
    %g 除空格外可打印字符
    %l 小写字母
    %p 标点符号
    %s 空白字符
    %u 大写字母
    %w 字符和数字
    %x 十六进制数字
    大写形势为上述补集
]]
print(string.gsub("hello,up-down!","%A","."))
--[[
    %转义
    '%?' 匹配一个问号
    + 重复至少一次
    * 重复至少零次
    - 重复至少零次 (最小匹配)
    ? 可选(出现零次或一次)
]]
print(string.gsub("one, and two; and three","%a+","word"))
print(string.match("abcd123","[a-z]+"))
--[[
    ^ 开头
    $ 结尾
]]
print(string.find("abcd123","[a-z]-"))
-- 我们使用'%b（​）'、'%b[​]'、'%b{}'或'%b<>'等作为模式，
-- 但实际上可以用任意不同的字符作为分隔符。
print(string.gsub("a (enclosed (in) parentheses) line","%b()",""))
-- 模式'%f[char-set]'代表前置模式 
-- 该模式只有在后一个字符位于char-set内而前一个字符不在时匹配一个空字符串
str = "the anthem is the theme"
print(string.gsub(str,"%f[%w]the%f[%w]","one"))